package com.panda.admin.login.entity;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.Size;
import javax.validation.constraints.NotNull;

import java.io.Serializable;
import java.util.List;


import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.panda.admin.base.BaseEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
import org.hibernate.validator.constraints.Length;

/**
* 角色表
* @TableName system_role
*/
@Setter
@Getter
@TableName("system_role")
public class SystemRole extends BaseEntity implements Serializable {

    /**
    * 角色id
    */
    @NotNull(message="[角色id]不能为空")
    @ApiModelProperty("角色id")
    private Long id;
    /**
    * 角色名称
    */
    @NotBlank(message="[角色名称]不能为空")
    @Size(max= 40,message="编码长度不能超过40")
    @ApiModelProperty("角色名称")
    @Length(max= 40,message="编码长度不能超过40")
    private String roleName;
    /**
    * 角色编码
    */
    @NotBlank(message="[角色编码]不能为空")
    @Size(max= 40,message="编码长度不能超过40")
    @ApiModelProperty("角色编码")
    @Length(max= 40,message="编码长度不能超过40")
    private String roleCode;
    /**
     * 权限排序
     */
    @NotBlank(message="[权限排序]不能为空")
    @ApiModelProperty("权限排序")
    private Integer sort;
    /**
    * 备注信息
    */
    @Size(max= 400,message="编码长度不能超过400")
    @ApiModelProperty("备注信息")
    @Length(max= 400,message="编码长度不能超过400")
    private String remark;

    /**
     * 菜单ids
     */
    @ApiModelProperty("菜单ids")
    @TableField(exist = false)
    private List<Long> menuIds;
}
